DH_CUSTOMER PR Guide
DH_CUSTOMER PR Guide
1. Overview
This document describes the standard procedure for creating migration-related changes and raising a Pull Request (PR) in the DH_CUSTOMER repository.
The objective of this process is to ensure that migration artifacts are maintained in a structured manner and that all changes are traceable through version control.
2. Prerequisites
Before raising a Pull Request, ensure that:
- Access to the DH_CUSTOMER repository has been granted.
- Git is installed and configured.
- The migration package has been validated.
- Required seed files and resource files are available.
3. Migration Workflow
Step 1 – Clone the Repository
Clone the DH_CUSTOMER repository to your local machine.
git clone <repository-url>
Verify that the repository has been cloned successfully before proceeding.
Step 2 – Create the Client Development Branch
Create a client-specific development branch.
3.2.1 Naming Convention
<ClientName>-Dev
3.2.2 Example
git checkout -b ABCBANK-Dev
The development branch serves as the base branch for all migration-related activities for the client.
Step 3 – Create the Migration Branch
Create a migration branch from the client development branch.
3.3.1 Naming Convention
<ClientName>-V<MigrationVersion>
3.3.2 Example
git checkout -b ABCBANK-V1.0.0
Each migration should be maintained in a separate branch to ensure proper version tracking and review.

Step 4 – Verify Client Folder Structure
Navigate to the local repository and verify whether a folder already exists for the client.
3.4.1 If the Client Folder Exists
Use the existing folder structure.
3.4.2 If the Client Folder Does Not Exist
Create a new folder using the client name.
3.4.3 Example
DH_CUSTOMER/
└── ABCBANK/
Step 5 – Create Migration Folder
Within the client folder, create a migration-specific folder.
3.5.1 Naming Convention
Use the migration version or migration number.
3.5.2 Example
ABCBANK/
├── MIG1/
└── MIG2/
This folder will contain all migration-related artifacts.
Step 6 – Create Required Subfolders
Inside the migration folder, create the following subfolders.
3.6.1 Folder Structure
MIG1/
├── SEEDS/
└── SH_RESOURCES/
3.6.2 Folder Description
| Folder | Purpose |
|---|---|
SEEDS | Contains database seed scripts required for migration. |
SH_RESOURCES | Contains updated resource files and configuration artifacts. |
Step 7 – Add Migration Files
Place the migration artifacts in the appropriate directories.
3.7.1 SEEDS Folder
Copy all migration seed scripts into:
SEEDS/
3.7.2 SH_RESOURCES Folder
Copy the updated resource files into the SH_RESOURCES directory, replacing the existing files.
SH_RESOURCES/
Ensure that all files are verified before raising the Pull Request.
Step 8 – Verify Changes and Raise PR
Verify that all migration artifacts have been added correctly.
Raise a Pull Request (PR) from the migration branch to the corresponding client development branch.
The Pull Request title should include both the client development branch name and the migration branch name.
3.8.1 Example
ABCBANK-Dev | ABCBANK-V1.0.0 Migration Changes
4. Recommended Repository Structure
DH_CUSTOMER/
└── ABCBANK/
└── MIG1/
├── SEEDS/
│ ├── seed_001.sql
│ └── seed_002.sql
└── SH_RESOURCES/
├── config.json
└── resources.xml
5. Best Practices
- Create a separate migration branch for each migration.
- Follow the prescribed branch naming conventions.
- Verify all changes before raising the Pull Request.
- Use the standard Pull Request title format.